#ifndef HALFEDGE_H
#define HALFEDGE_H

struct Vertex;
struct Face;

struct HalfEdge {

    //-------------------------------------------------------------//
    //                          ATTRIBUTES                         //
    //-------------------------------------------------------------//

    Vertex *begin, *end;
    HalfEdge *complement, *previous, *next;
    Face *face;
    unsigned int index;

    //-------------------------------------------------------------//
    //                          METHODS                            //
    //-------------------------------------------------------------//

    HalfEdge(Vertex &begin, Vertex &end);
};

#endif // HALFEDGE_H

